# 在后台默默运行，直接刚给我数据，我不要看到前端的页面

from selenium.webdriver import Edge
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select
import time

from selenium.webdriver.edge.options import Options  # ArgOptions:参数选项

# 艺恩票房榜单
# https://www.endata.com.cn/BoxOffice/BO/Year/index.html

# 配置无头浏览器
opt = Options()
opt.add_argument("--headless")
opt.add_argument("--disable-gpu")

url = "https://www.endata.com.cn/BoxOffice/BO/Year/index.html"
web = Edge(options=opt)  # 把参数配置设置到浏览器中
web.get(url)

'''处理选取年份的下拉列表
<select>
    <option value="1">python</option>
</select>

看到的值是 python   实际的值是1


# 先定位到下拉列表
sel_el = web.find_element(By.XPATH, '//*[@id="OptionDate"]')  # 拿到的都是节点
# 对元素进行包装，保准成下拉菜单
sel = Select(sel_el)
# 让浏览器进行调整选项，获取不同的年份
for i in range(len(sel.options)):  # i每一个下拉框索引的位置
    sel.select_by_index(i)  # 按照索引进行切换
    time.sleep(1)  # 切换等待页面响应
    table = web.find_element(By.XPATH, '//*[@id="TableList"]/table').text
    print(table, '\n-----------------------------------------')  # 打印所有的信息

print("运行完毕")
'''
# 如何拿到页面代码（经过数据加载及js处理之后的结果的html）
time.sleep(2)
web = web.page_source
print(web)
